package org.linlinjava.litemall.db.dto;

import org.linlinjava.litemall.db.domain.LitemallOrderGoods;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * litemall秩序dto
 *
 * @author macmini
 * @date 2022/12/05
 */
public class LitemallOrderDto {
    /**
     * id
     */
    private Integer id;

    /**
     * 用户id
     */
    private Integer userId;

    /**
     * 用户名
     */
    private String userName;

    /**
     * 商店id
     */
    private Integer shopId;

    /**
     * 商店名字
     */
    private String shopName;

    /**
     * 订单sn
     */
    private String orderSn;

    /**
     * 传输类型
     */
    private Byte transportType;

    /**
     * 设备没有
     */
    private String deviceNo;

    /**
     * 订单状态
     */
    private Short orderStatus;

    /**
     * 退款状态
     */
    private Byte refundStatus;

    /**
     * 评估状况
     */
    private Byte evaluationStatus;

    /**
     * 了状态
     */
    private Byte madeStatus;

    /**
     * 订单类型
     */
    private Byte orderType;

    /**
     * 原始sn
     */
    private String originalSn;

    /**
     * 是重复
     */
    private Boolean isRepeat;

    /**
     * 收货人
     */
    private String consignee;

    /**
     * 商品价格
     */
    private BigDecimal goodsPrice;

    /**
     * 优惠价格
     */
    private BigDecimal couponPrice;

    /**
     * 整体价格
     */
    private BigDecimal integralPrice;

    /**
     * 团购价格
     */
    private BigDecimal grouponPrice;

    /**
     * 订单价格
     */
    private BigDecimal orderPrice;


    /**
     * 实际价格
     */
    private BigDecimal actualPrice;


    /**
     * 支付类型
     */
    private Byte payType;

    /**
     * 支付id
     */
    private String payId;


    /**
     * 支付时间
     */
    private LocalDateTime payTime;

    /**
     * 船状态
     */
    private Byte shipStatus;


    /**
     * 船时间
     */
    private LocalDateTime shipTime;


    /**
     * 收到开始时间
     */
    private LocalDateTime receiptStartTime;

    /**
     * 收到结束时间
     */
    private LocalDateTime receiptEndTime;


    /**
     * 结束时间
     */
    private LocalDateTime endTime;

    /**
     * 结束一年
     */
    private Integer endYear;

    /**
     * 月结束
     */
    private Integer endMonth;

    /**
     * 添加时间
     */
    private LocalDateTime addTime;

    /**
     * 删除
     */
    private Boolean deleted;

    /**
     * 订阅名字
     */
    private String subscribeName;

    /**
     * 优惠券名称
     */
    private String couponName;

    /**
     * 电子邮件
     */
    private String email;

    /**
     * 货物
     */
    private List<LitemallOrderGoods> goods;

    /**
     * 接收范围
     */
    private String receiptRange;

    /**
     * 移动
     */
    private String mobile;

    /**
     * 地址
     */
    private String address;

//    private String goodsNames;

    /**
     * 得到id
     *
     * @return {@link Integer}
     */
    public Integer getId() {
        return id;
    }

    /**
     * 组id
     *
     * @param id id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 得到用户id
     *
     * @return {@link Integer}
     */
    public Integer getUserId() {
        return userId;
    }

    /**
     * 设置用户id
     *
     * @param userId 用户id
     */
    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    /**
     * 获得用户名
     *
     * @return {@link String}
     */
    public String getUserName() {
        return userName;
    }

    /**
     * 设置用户名
     *
     * @param userName 用户名
     */
    public void setUserName(String userName) {
        this.userName = userName;
    }

    /**
     * 让商店id
     *
     * @return {@link Integer}
     */
    public Integer getShopId() {
        return shopId;
    }

    /**
     * 设置商店id
     *
     * @param shopId 商店id
     */
    public void setShopId(Integer shopId) {
        this.shopId = shopId;
    }

    /**
     * 得到订单sn
     *
     * @return {@link String}
     */
    public String getOrderSn() {
        return orderSn;
    }

    /**
     * 设置顺序sn
     *
     * @param orderSn 订单sn
     */
    public void setOrderSn(String orderSn) {
        this.orderSn = orderSn;
    }

    /**
     * 得到设备没有
     *
     * @return {@link String}
     */
    public String getDeviceNo() {
        return deviceNo;
    }

    /**
     * 设置设备没有
     *
     * @param deviceNo 设备没有
     */
    public void setDeviceNo(String deviceNo) {
        this.deviceNo = deviceNo;
    }

    /**
     * 得到订单状态
     *
     * @return {@link Short}
     */
    public Short getOrderStatus() {
        return orderStatus;
    }

    /**
     * 设置订单状态
     *
     * @param orderStatus 订单状态
     */
    public void setOrderStatus(Short orderStatus) {
        this.orderStatus = orderStatus;
    }

    /**
     * 得到退款状态
     *
     * @return {@link Byte}
     */
    public Byte getRefundStatus() {
        return refundStatus;
    }

    /**
     * 设置退款状态
     *
     * @param refundStatus 退款状态
     */
    public void setRefundStatus(Byte refundStatus) {
        this.refundStatus = refundStatus;
    }

    /**
     * 得到评价状态
     *
     * @return {@link Byte}
     */
    public Byte getEvaluationStatus() {
        return evaluationStatus;
    }

    /**
     * 设置评价状态
     *
     * @param evaluationStatus 评估状况
     */
    public void setEvaluationStatus(Byte evaluationStatus) {
        this.evaluationStatus = evaluationStatus;
    }

    /**
     * 获得了地位
     *
     * @return {@link Byte}
     */
    public Byte getMadeStatus() {
        return madeStatus;
    }

    /**
     * 设置了状态
     *
     * @param madeStatus 了状态
     */
    public void setMadeStatus(Byte madeStatus) {
        this.madeStatus = madeStatus;
    }

    /**
     * 获取订单类型
     *
     * @return {@link Byte}
     */
    public Byte getOrderType() {
        return orderType;
    }

    /**
     * 设置订单类型
     *
     * @param orderType 订单类型
     */
    public void setOrderType(Byte orderType) {
        this.orderType = orderType;
    }

    /**
     * 得到原始sn
     *
     * @return {@link String}
     */
    public String getOriginalSn() {
        return originalSn;
    }

    /**
     * 原始sn组
     *
     * @param originalSn 原始sn
     */
    public void setOriginalSn(String originalSn) {
        this.originalSn = originalSn;
    }

    /**
     * 有重复
     *
     * @return {@link Boolean}
     */
    public Boolean getRepeat() {
        return isRepeat;
    }

    /**
     * 设置重复
     *
     * @param repeat 重复
     */
    public void setRepeat(Boolean repeat) {
        isRepeat = repeat;
    }

    /**
     * 获得商品价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getGoodsPrice() {
        return goodsPrice;
    }

    /**
     * 设置商品价格
     *
     * @param goodsPrice 商品价格
     */
    public void setGoodsPrice(BigDecimal goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    /**
     * 得到优惠价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getCouponPrice() {
        return couponPrice;
    }

    /**
     * 设置优惠券价格
     *
     * @param couponPrice 优惠价格
     */
    public void setCouponPrice(BigDecimal couponPrice) {
        this.couponPrice = couponPrice;
    }

    /**
     * 获得积分价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getIntegralPrice() {
        return integralPrice;
    }

    /**
     * 积分设置价格
     *
     * @param integralPrice 整体价格
     */
    public void setIntegralPrice(BigDecimal integralPrice) {
        this.integralPrice = integralPrice;
    }

    /**
     * 获得团购价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getGrouponPrice() {
        return grouponPrice;
    }

    /**
     * groupon定价
     *
     * @param grouponPrice 团购价格
     */
    public void setGrouponPrice(BigDecimal grouponPrice) {
        this.grouponPrice = grouponPrice;
    }

    /**
     * 得到订单价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getOrderPrice() {
        return orderPrice;
    }

    /**
     * 设置订单价格
     *
     * @param orderPrice 订单价格
     */
    public void setOrderPrice(BigDecimal orderPrice) {
        this.orderPrice = orderPrice;
    }

    /**
     * 得到实际价格
     *
     * @return {@link BigDecimal}
     */
    public BigDecimal getActualPrice() {
        return actualPrice;
    }

    /**
     * 设置实际价格
     *
     * @param actualPrice 实际价格
     */
    public void setActualPrice(BigDecimal actualPrice) {
        this.actualPrice = actualPrice;
    }

    /**
     * 获取支付类型
     *
     * @return {@link Byte}
     */
    public Byte getPayType() {
        return payType;
    }

    /**
     * 设置支付类型
     *
     * @param payType 支付类型
     */
    public void setPayType(Byte payType) {
        this.payType = payType;
    }

    /**
     * 得到支付id
     *
     * @return {@link String}
     */
    public String getPayId() {
        return payId;
    }

    /**
     * 设置支付id
     *
     * @param payId 支付id
     */
    public void setPayId(String payId) {
        this.payId = payId;
    }

    /**
     * 得到支付时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getPayTime() {
        return payTime;
    }

    /**
     * 设置支付时间
     *
     * @param payTime 支付时间
     */
    public void setPayTime(LocalDateTime payTime) {
        this.payTime = payTime;
    }

    /**
     * 得到船状态
     *
     * @return {@link Byte}
     */
    public Byte getShipStatus() {
        return shipStatus;
    }

    /**
     * 设置船状态
     *
     * @param shipStatus 船状态
     */
    public void setShipStatus(Byte shipStatus) {
        this.shipStatus = shipStatus;
    }

    /**
     * 得到船时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getShipTime() {
        return shipTime;
    }

    /**
     * 船时间
     *
     * @param shipTime 船时间
     */
    public void setShipTime(LocalDateTime shipTime) {
        this.shipTime = shipTime;
    }

    /**
     * 得到收据开始时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getReceiptStartTime() {
        return receiptStartTime;
    }

    /**
     * 设置接收开始时间
     *
     * @param receiptStartTime 收到开始时间
     */
    public void setReceiptStartTime(LocalDateTime receiptStartTime) {
        this.receiptStartTime = receiptStartTime;
    }

    /**
     * 得到收据结束时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getReceiptEndTime() {
        return receiptEndTime;
    }

    /**
     * 设置接收结束时间
     *
     * @param receiptEndTime 收到结束时间
     */
    public void setReceiptEndTime(LocalDateTime receiptEndTime) {
        this.receiptEndTime = receiptEndTime;
    }

    /**
     * 得到结束时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getEndTime() {
        return endTime;
    }

    /**
     * 设置结束时间
     *
     * @param endTime 结束时间
     */
    public void setEndTime(LocalDateTime endTime) {
        this.endTime = endTime;
    }

    /**
     * 得到最后一年
     *
     * @return {@link Integer}
     */
    public Integer getEndYear() {
        return endYear;
    }

    /**
     * 设置结束一年
     *
     * @param endYear 结束一年
     */
    public void setEndYear(Integer endYear) {
        this.endYear = endYear;
    }

    /**
     * 得到月结束
     *
     * @return {@link Integer}
     */
    public Integer getEndMonth() {
        return endMonth;
    }

    /**
     * 设置结束月
     *
     * @param endMonth 月结束
     */
    public void setEndMonth(Integer endMonth) {
        this.endMonth = endMonth;
    }

    /**
     * 有添加时间
     *
     * @return {@link LocalDateTime}
     */
    public LocalDateTime getAddTime() {
        return addTime;
    }

    /**
     * 设置添加时间
     *
     * @param addTime 添加时间
     */
    public void setAddTime(LocalDateTime addTime) {
        this.addTime = addTime;
    }

    /**
     * 被删除
     *
     * @return {@link Boolean}
     */
    public Boolean getDeleted() {
        return deleted;
    }

    /**
     * 设置删除
     *
     * @param deleted 删除
     */
    public void setDeleted(Boolean deleted) {
        this.deleted = deleted;
    }

    /**
     * 订阅名字
     *
     * @return {@link String}
     */
    public String getSubscribeName() {
        return subscribeName;
    }

    /**
     * 设置订阅名称
     *
     * @param subscribeName 订阅名字
     */
    public void setSubscribeName(String subscribeName) {
        this.subscribeName = subscribeName;
    }

    /**
     * 获得电子邮件
     *
     * @return {@link String}
     */
    public String getEmail() {
        return email;
    }

    /**
     * 设置电子邮件
     *
     * @param email 电子邮件
     */
    public void setEmail(String email) {
        this.email = email;
    }


    /**
     * 得到收据范围
     *
     * @return {@link String}
     */
    public String getReceiptRange() {
        return receiptRange;
    }

    /**
     * 设置接收范围
     *
     * @param receiptRange 接收范围
     */
    public void setReceiptRange(String receiptRange) {
        this.receiptRange = receiptRange;
    }

    /**
     * 得到传输类型
     *
     * @return {@link Byte}
     */
    public Byte getTransportType() {
        return transportType;
    }

    /**
     * 设置传输类型
     *
     * @param transportType 传输类型
     */
    public void setTransportType(Byte transportType) {
        this.transportType = transportType;
    }

    /**
     * 得到货物
     *
     * @return {@link List}<{@link LitemallOrderGoods}>
     */
    public List<LitemallOrderGoods> getGoods() {
        return goods;
    }

    /**
     * 设置商品
     *
     * @param goods 货物
     */
    public void setGoods(List<LitemallOrderGoods> goods) {
        this.goods = goods;
    }

    /**
     * 得到移动
     *
     * @return {@link String}
     */
    public String getMobile() {
        return mobile;
    }

    /**
     * 设置手机
     *
     * @param mobile 移动
     */
    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    /**
     * 让收货人
     *
     * @return {@link String}
     */
    public String getConsignee() {
        return consignee;
    }

    /**
     * 设置收货人
     *
     * @param consignee 收货人
     */
    public void setConsignee(String consignee) {
        this.consignee = consignee;
    }

    /**
     * 得到解决
     *
     * @return {@link String}
     */
    public String getAddress() {
        return address;
    }

    /**
     * 设置地址
     *
     * @param address 地址
     */
    public void setAddress(String address) {
        this.address = address;
    }

    /**
     * 店名字
     *
     * @return {@link String}
     */
    public String getShopName() {
        return shopName;
    }

    /**
     * 设置商店名称
     *
     * @param shopName 商店名字
     */
    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

    /**
     * 获得优惠券名称
     *
     * @return {@link String}
     */
    public String getCouponName() {
        return couponName;
    }

    /**
     * 设置优惠券名称
     *
     * @param couponName 优惠券名称
     */
    public void setCouponName(String couponName) {
        this.couponName = couponName;
    }
}
